接口说明
接口名 |
描述 |
---|---|
setSource(String path) |
读取指定路径的媒体文件,将其设置为媒体源。 |
setSource(FileDescriptor fd) |
读取指定的媒体文件描述符,设置媒体源。 |
setSource(FileDescriptor fd, long offset, long length) |
读取指定的媒体文件描述符,读取数据的起始位置的偏移量以及读取的数据长度,设置媒体源。 |
setSource(String uri, Map<String, String> headers) |
读取指定的媒体文件Uri和请求头,设置媒体源。 |
setSource(Context context, Uri uri) |
读取指定的媒体的Uri和上下文,设置媒体源。 |
resolveMetadata(int keyCode) |
获取媒体元数据中指定keyCode对应的值。 |
fetchVideoScaledPixelMapByTime(long timeUs, int option, int dstWidth, int dstHeight) |
根据视频源中时间戳、获取选项以及图像帧缩放大小,获取帧数据。 |
fetchVideoPixelMapByTime(long timeUs, int option) |
根据视频源中时间戳和获取选项,获取帧数据。 |
fetchVideoPixelMapByTime(long timeUs) |
根据视频源中时间戳,获取最靠近时间戳的帧的数据。 |
fetchVideoPixelMapByTime() |
随机获取数据源中某一帧的数据。 |
resolveImage() |
获取音频源中包含的图像数据,比如专辑封面,如果有多个图像,返回任意一个图像的数据。 |
fetchVideoPixelMapByIndex(int frameIndex, PixelMapConfigs configs) |
根据帧索引、指定的图像像素格式选项,获取视频源中指定一帧的数据。 |
fetchVideoPixelMapByIndex(int frameIndex) |
根据帧索引,获取视频源中指定一帧的数据。 |
fetchVideoPixelMapByIndex(int frameIndex, int numFrames, PixelMapConfigs configs) |
根据连续帧开始索引、连续帧数、指定的图像像素格式选项,获取视频源中指定的连续多帧的数据。 |
fetchVideoPixelMapByIndex(int frameIndex, int numFrames) |
根据连续帧开始索引、连续帧数,获取视频源中指定的连续多帧的数据。 |
fetchImagePixelMapByIndex(int imageIndex, PixelMapConfigs configs) |
根据图像索引、指定的图像像素格式选项,获取源图像中指定的图像。 |
fetchImagePixelMapByIndex(int imageIndex) |
根据图像索引,获取源图像中指定的图像。 |
fetchImagePrimaryPixelMap(PixelMapConfigs configs) |
据指定的图像像素格式选项,获取源图像中默认图像。 |
fetchImagePrimaryPixelMap() |
获取源图像中默认图像。 |
release() |
释放读取的媒体资源。 |
获取帧数据的开发步骤
- 创建媒体数据管理AVMetadataHelper对象,可以通过setSource设置要读取的媒体文件,如果不设置或设置不正确,则无法进行后续操作。
- AVMetadataHelper avMetadataHelper = new AVMetadataHelper ();
- avMetadataHelper.setSource(“/path/short_video.mp4”);
- 指定获取帧数据的选项,以及获取帧的时间,获取媒体源的帧数据。
- PixelMap pixelMap = avMetadataHelper.fetchVideoPixelMapByTime(1000L, 0x00);
- 获取到PixelMap对象,并完成相关信息处理后,调用release()函数释放读取的媒体资源。
- avMetadataHelper.release();
获取媒体元数据的开发步骤
- 创建媒体数据管理AVMetadataHelper对象,可以通过setSource设置要读取的媒体文件,如果不设置或设置不正确,则无法进行后续操作。
- AVMetadataHelper avMetadataHelper= new AVMetadataHelper();
- avMetadataHelper.setSource(“/path/short_video.mp4”);
- 指定要获取的媒体元数据的key,获取媒体元数据。如下代码获取媒体的时长信息:
- String result = avMetadataHelper.resolveMetadata(AVMetadataHelper.AV_KEY_DURATION);
- 获取到媒体元数据后,调用release()函数释放读取的媒体资源。
- avMetadataHelper.release();
获取音频的图像数据的开发步骤
- 创建媒体数据管理AVMetadataHelper对象,可以通过setSource设置要读取的音频媒体文件,如果不设置或设置不正确,则无法进行后续操作。
- AVMetadataHelper avMetadataHelper= new AVMetadataHelper();
- avMetadataHelper.setSource(“/path/short_video.mp4”);
- 获取音频的图像数据。
- byte[] data = avMetadataHelper.resolveImage();
- 获取到图像数据后,调用release()函数释放读取的媒体资源。
- avMetadataHelper.release();